package com.example.zhunongzonghe.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.zhunongzonghe.beans.ZnCollectHouseBean;
import com.example.zhunongzonghe.beans.ZnFarmhouseBean;
import com.example.zhunongzonghe.entity.ZnCollectHouse;

/**
* @author 蔡某人
* @description 针对表【zn_collect_house】的数据库操作Service
* @createDate 2024-04-09 23:57:01
*/
public interface ZnCollectHouseService extends IService<ZnCollectHouse> {

    /**
     * 用户收藏农家乐
     * @param znCollectHouseBean
     * @param userName
     */
    void addCollect(ZnCollectHouseBean znCollectHouseBean, String userName);

    /**
     * 农家乐是否被收藏
     * @param farmId
     * @param userId
     * @return
     */
    Boolean isCollect(Integer farmId,Integer userId);

    /**
     * 获取当前农家乐收藏数量
     * @param farmId
     * @return
     */
    Integer CollectCounts(Integer farmId);


    /**
     * redis同步收藏数据到MySql数据库
     */
    void syncFarmCollect();

    /**
     * 批量删除重复的农家乐收藏数据
     */
    void delRepetition();

    /**
     * 我的农家乐收藏
     * @param username
     * @param currentPage
     * @param pageSize
     * @return
     */
    Page<ZnFarmhouseBean> MyCollects(String username, Integer currentPage, Integer pageSize);
}
